"""
阶乘的数字之和

n! 表示的是 n × (n − 1) × … × 3 × 2 × 1。例如：10! = 10 × 9 × … × 3 × 2 × 1 = 3628800，
所以10的阶乘的数字之和是 3 + 6 + 2 + 8 + 8 + 0 + 0 = 27。
求出100!的各位数字和。
"""

def factorial(n):
    if n==1:
        return 1
    else:
        return(n*factorial(n-1))
print(sum(int(i) for i in str(factorial(100))))




# def an_product(n):#计算阶乘
#     nu=1
#     for i in list(range(1,n+1)):
#         nu*=i
#     return nu
# print(sum(int(i) for i in str(an_product(100))))
# 答案：648